﻿using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
using Entidades;
using Logica;
using Logica.Comandos.Cliente;
using SchadenEscritorio.Contratos.ContratosBase;

namespace SchadenEscritorio.Presentadores
{
    public class PresentadorBuscarCliente
    {
        #region Atributos
        
        private IContratoBuscar _vistaBuscar;
        private List<Cliente> _lista = new List<Cliente>();

        #endregion

        #region Encapsulamiento


        public IContratoBuscar VistaBuscar
        {
            get { return _vistaBuscar; }
            set { _vistaBuscar = value; }
        }

        public List<Cliente> Lista
        {
            get { return _lista; }
            set { _lista = value; }
        }

        #endregion

        #region Metodos
        /// <summary>
        /// metodo que lista los cliente que sastifacen la busqueda
        /// </summary>
        public void Listar()
        {
            Comando comando = FComandos.ComandoCliente().Consultar();
            VistaBuscar.ListaBusqueda.AutoScroll = true;

            int contador = 14;
            foreach (Cliente cliente in 
                ((ComandoBuscarCliente) comando).Ejecutar(_vistaBuscar.Busqueda.Text))
            {
                GroupBox nuevo1 = new GroupBox();
                Label rifE = new Label();

                rifE.Text = cliente.LetraRif + " - " + cliente.Rif;
                rifE.Location = new Point(16, 22);

                nuevo1.Name = cliente.Id.ToString();
                nuevo1.Controls.Add(rifE);
                nuevo1.Text = cliente.Nombre;
                nuevo1.Height = 56;
                nuevo1.Width = 577;

                nuevo1.Location = new Point(16, contador);
                nuevo1.Click += VistaBuscar.EventoBotonBusqueda;
                VistaBuscar.ListaBusqueda.Controls.Add(nuevo1);
                contador = contador + nuevo1.Height + 5;
                _lista.Add(cliente);
            }
        }
        #endregion
    }
}
